package trabajo.sw;

import clases.domain.Fabrica;
import clases.domain.Modelo;
import clases.domain.Pieza;
import ejb.session.MantenedoresBean;
import ejb.session.MantenedoresLocal;
import java.util.ArrayList;
import java.util.List;
import javax.ejb.EJB;
import javax.faces.application.FacesMessage;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.RequestScoped;
import javax.faces.context.FacesContext;
import javax.faces.model.SelectItem;
import org.primefaces.event.RowEditEvent;

@ManagedBean
@RequestScoped
public class GestionadorFabricaMB {

    private String nombreFabrica;
    private String direccion;
    private int telefono;
    private List<Fabrica> fabricas;
    
    @EJB private MantenedoresLocal mantenedorEjb;
    
    public void agregarFabrica(){
       System.out.println("agregarFabrica");
       Fabrica fabrica = new Fabrica();
       fabrica.setNomFabrica(nombreFabrica);
       fabrica.setDireccion(direccion);
       fabrica.setTelefono(telefono);
       
        System.out.println("nombreFabrica "+nombreFabrica);
        System.out.println("direccion "+direccion);
        System.out.println("telefono "+telefono);
        mantenedorEjb.insertFabrica(fabrica);
        nombreFabrica="";
        direccion = "";
        telefono = 0;
        
    }
    public void eliminarFabrica(){
    
    }
    public String getNombreFabrica() {
        return nombreFabrica;
    }

    public void setNombreFabrica(String nombreFabrica) {
        this.nombreFabrica = nombreFabrica;
    }

    public String getDireccion() {
        return direccion;
    }

    public void setDireccion(String direccion) {
        this.direccion = direccion;
    }

    public int getTelefono() {
        return telefono;
    }

    public void setTelefono(int telefono) {
        this.telefono = telefono;
    }

    public List<Fabrica> getFabricas() {
        if(fabricas==null){
            System.out.println("Entro a buscar lista");
            fabricas = mantenedorEjb.getListFabricas();
        }
        return fabricas;
    }

    public void setFabricas(List<Fabrica> fabricas) {
        this.fabricas = fabricas;
    }
    public void onEdit(RowEditEvent event) {  
        Fabrica fabricaEdit = (Fabrica) event.getObject();  
        mantenedorEjb.updateFabrica(fabricaEdit);
        System.out.println("Edicion "+fabricaEdit.getNomFabrica());
    }  
      
    public void onCancel(RowEditEvent event) {  
        
        boolean estado = false;
        Fabrica fabricaEdit = (Fabrica) event.getObject();  
  
        System.out.println("Eliminar "+fabricaEdit.getNomFabrica());
        estado = mantenedorEjb.deleteFabrica(fabricaEdit);
        if(estado){
           fabricas.clear();
        }
    }  
   
}
